/**
* shell_recorder_record:
* @recorder: the #ShellRecorder
+ * @filename_used: (out) (allow-none): actual filename used for recording
*
* Starts recording, Starting the recording may fail if the output file
* cannot be opened, or if the output stream cannot be created
* Return value: %TRUE if recording was succesfully started
*/
gboolean
-shell_recorder_record (ShellRecorder *recorder)
+shell_recorder_record (ShellRecorder *recorder,
+ char **filename_used)
{
g_return_val_if_fail (SHELL_IS_RECORDER (recorder), FALSE);
g_return_val_if_fail (recorder->stage != NULL, FALSE);
if (!recorder_open_pipeline (recorder))
return FALSE;
+ if (filename_used)
+ *filename_used = g_strdup (recorder->current_pipeline->filename);
+
recorder_connect_stage_callbacks (recorder);
recorder->start_time = get_wall_time();
const char *file_template);
void shell_recorder_set_pipeline (ShellRecorder *recorder,
const char *pipeline);
-gboolean shell_recorder_record (ShellRecorder *recorder);
+gboolean shell_recorder_record (ShellRecorder *recorder,
+ char **filename_used);
void shell_recorder_close (ShellRecorder *recorder);
void shell_recorder_pause (ShellRecorder *recorder);
gboolean shell_recorder_is_recording (ShellRecorder *recorder);
{
recorder = shell_recorder_new (CLUTTER_STAGE (stage));
shell_recorder_set_file_template (recorder, "test-recorder.webm");
- shell_recorder_record (recorder);
+ shell_recorder_record (recorder, NULL);
}
int main (int argc, char **argv)